In graphical user interfaces (GUIs), target pointing is a fundamental task for acquiring interface elements or components such as buttons, menu items and icons. With the increase in both size and resolution of computer displays, there are increasing number and/or smaller interface elements. The drawback is that it becomes more difficult for a user to acquire such interface elements over a large display screen with the traditional point cursor. The difficulties have worsened when many user interfaces nowadays often involve multiple extended screens. Difficulties in using such system can hinder work productivity and can cause repetitive motion disorders to some users.
Several techniques have been proposed in recent years to address this problem and to improve pointing performance. One of the approaches is to reduce cursor movement by directly altering the cursor or target locations. These techniques perform better than traditional point cursor in a sparse desktop environment. However, they are sensitive to the density and layout of the interface components, and their performance de-grades when the target item to be captured is spatially close to multiple nearby objects. Since it is common to have non-uniform target distributions and clusters of small targets in GUIs, these techniques would not reliably provide a performance improvement over the traditional point cursor.
Other systems have been proposed for dense target environments. They include techniques that are based on expending the size of the targets, dynamic control display ratio and multiple cursors. One technique developed from the area cursor is the Bubble cursor. The Bubble cursor technique dynamically adjusts the cursor's activation area such that only the closest target is captured. This is equivalent to expending the boundary of each target to the Voronoi cell with the target center being the cell center, such that the Voronoi tessellation defined by all targets fills the whole desktop space. This maximizes the effective sizes of all targets.
Another technique based on the area cursor, called Dynaspot cursor, allow the selection of the empty space between targets and reduce rapid changes of cursor size. This technique couples the cursor's activation area with its speed, behaving as a point cursor at low speed and a circular area cursor at high speed. However, this technique limits the maximum size of the circular area, and thus the cursor still needs to travel a long way to access distant targets even in a sparse desktop environment.
The present invention seeks to address the problems associated with conventional cursor techniques, or at least to provide a useful alternative to the public.